compile [-c_code] [options] <Root-Class> <Root-Procedure>

Command `compile' is the SmallEiffel compiler.
Source code is Eiffel and target Code is ANSI C code.

Execution of command `compile' has two major steps.

First Step : command `compile_to_c' is called to produce various
----------   C files (*.h and *.c). A script file is also produced
             by command `compile_to_c'. The name of the script file
             is also printed by command `compile_to_c' (*.make or
             *.BAT on DOS for example). 
Second Step : C compiling, and C linking of C files using the 
-----------  script produced at first step.

Thus, command `compile' is a simple driver to call separately
command `compile_to_c' and the to call the C compiler.

As command `compile_to_c', command `compile' must have at least 
two arguments to indicate the starting execution point of the system.
Thus, execution will start in <Root-Procedure> of <Root-Class>.

-c_code : All options of command `compile_to_c' can be used with
command `compile' (they are only passed to `compile_to_c').
Only the option -c_code is not passed to command `compile_to_c'.
The option -c_code must be used if you want to save the produced
C code. 

- Example 1 - 
When SmallEiffel is correctly installed, you can simply type 
the following command to test the hello world program :

   compile hello_world make

The compiler should tell you what's wrong or should compile
Eiffel source files telling you the full path used for loading
of Eiffel source code.
On UNIX, the executable file is usually "a.out".

- Example 2 - 
Type following command to finalyse the hello_world simple program :

   compile -boost -O2 hello_world make

Note that option -O2 is passed to the C compiler. Option -boost
is passed to command `compile_to_c' (see compile_to_c.hlp).


